import { Addon, Node } from '@antv/x6'
// 基础节点
// import { Start } from './modules/Start'
// import { Flow } from './modules/Flow'
// import { OptionalFlow } from './modules/OptionalFlow'
// import { Judge } from './modules/Judge'
import { Data } from './modules/Data'
// import { Connect } from './modules/Connect'
// import { Database } from './modules/Database'
// import { ChildrenProcess } from './modules/ChildrenProcess'
// import { DocumentText } from './modules/DocumentText'

// 根节点
import { RootNode } from './modules/rootNode/rootNode'

// 门
import { AndGate } from './modules/gate/AndGate'
// import { BiaojueGate } from './modules/gate/BiaojueGate'
// import { Bus } from './modules/gate/Bus'
// import { FeiGate } from './modules/gate/FeiGate'
import { HuoGate } from './modules/gate/HuoGate'
// import { JinGate } from './modules/gate/JinGate'
// import { ShunxuyuGate } from './modules/gate/ShunxuyuGate'
// import { YihuoGate } from './modules/gate/YihuoGate'
// 计算节点
import { Chazhi } from './modules/node/Chazhi'
import { Duibi } from './modules/node/Duibi'
// import { Qushi } from './modules/node/Qushi'
// import { Yuce } from './modules/node/Yuce'
import { Yuzhi } from './modules/node/Yuzhi'
import { TestNode } from './modules/node/Ceshi'
// import { Zhouqi } from './modules/node/Zhouqi'
// import { Zidingyi } from './modules/node/Zidingyi'

interface IFNodeGroups {
  /**节点标题 */
  group: Addon.Stencil.Group
  /**节点列表 */
  node: Node.Metadata[]
}
/**模板节点配置 */
export const stencilNodeOptions: IFNodeGroups[] = [
  // {
  //   group: {
  //     name: 'basic',
  //     title: '基础节点',
  //     graphHeight: 500
  //   },
  //   node: [
  //     Start,
  //     Flow,
  //     OptionalFlow,
  //     Judge,
  //     Data,
  //     Connect,
  //     Database,
  //     ChildrenProcess,
  //     DocumentText
  //   ]
  // },
  {
    group: {
      name: 'rootNode',
      title: '根节点',
      graphHeight: 100,
    },
    node: [RootNode],
  },
  {
    group: {
      name: 'node',
      title: '计算节点',
      graphHeight: 400,
    },
    node: [
      Chazhi,
      Duibi,
      TestNode,
      // Qushi,
      // Yuce,
      Yuzhi,
      Data,
      // Zhouqi,
      // Zidingyi
    ],
  },
  {
    group: {
      name: 'gate',
      title: '门节点',
      graphHeight: 500,
    },
    node: [
      AndGate,
      // BiaojueGate,
      // Bus,
      // FeiGate,
      HuoGate,
      // JinGate,
      // ShunxuyuGate,
      // YihuoGate
    ],
  },
]
